#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

//int number_of_1(unsigned int m)
//{
//	int count = 0;
//	while (m)
//	{
//		if (m % 2 == 1)
//		{
//			count++;
//		}
//		m /= 2;
//	}
//	return count;
//}


//int number_of_1(unsigned int m)
//{
//	int count = 0;
//	int i = 0;
//	for (i = 0; i < 32; i++)
//	{
//		if ((m >> i) & 1 == 1)
//		{
//			count++;
//		}
//	}
//	return count;
//}


int number_of_1(unsigned int m)
{
	int count = 0;
	while (m)
	{
		m = m & (m - 1);
		count++;
	}
	return count;
}
//m		1110
//m-1	1101          1100

//m		1100
//m-1	1001		  1000

//m		1000
//m-1	0111		  0000


int main()
{
	int n = 0;
	scanf("%d", &n);
	int ret = number_of_1(n);
	printf("%d\n", ret);
	return 0;
}